package com.tarena.lbs.marketing.web.repository;

import com.tarena.lbs.base.protocol.exception.BusinessException;
import com.tarena.lbs.base.protocol.pager.BasePageList;
import com.tarena.lbs.pojo.marketing.bo.CouponBO;
import com.tarena.lbs.pojo.marketing.dos.CouponDO;
import com.tarena.lbs.pojo.marketing.param.CouponParam;
import com.tarena.lbs.pojo.marketing.param.UpdateParam;
import com.tarena.lbs.pojo.marketing.query.CouponQuery;

public interface CouponRepository {

    CouponDO insert(CouponParam couponParam) throws BusinessException;

    void update(CouponParam couponParam);

    void updateStatus(UpdateParam updateParam);

    BasePageList<CouponBO> list(CouponQuery couponQuery);

    CouponBO getDetail(Integer couponId);
}
